home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / spiele / gnuchess / src / test / chesstest / cmpr.c < prev    next >
C/C++ Source or Header  |  1995-07-02  |  1KB  |  60 lines

  1. #include <stdio.h>
  2. FILE *A, *B;
  3. char a[100];
  4. char b[100];
  5. char *aa, *bb;
  6. char *aaa, *bbb;
  7. int i, fail, right, num;
  8. int loop = 1;
  9. main (argc, argv)
  10.      int argc;
  11.      char *argv[];
  12. {
  13.   A = fopen (argv[1], "r");
  14.   B = fopen (argv[2], "r");
  15.   num = 0;
  16.   right = 0;
  17.   while (fgets (a, 100, A) != NULL)
  18.     {
  19.       if (strlen (a) < 8)
  20.     {
  21.       printf ("bad file %s\n", argv[1]);
  22.       exit ();
  23.     }
  24.       fail = 0;
  25.       num++;
  26.       fgets (b, 100, B);
  27.       if (strlen (b) < 8)
  28.     {
  29.       printf ("bad file %s\n", argv[2]);
  30.       exit ();
  31.     }
  32.       aa = a;
  33.       bb = b;
  34.       for (; *aa != ':'; aa++);
  35.       for (; *bb != ':'; bb++);
  36.       aa += 2;
  37.       bb += 2;
  38.       aaa = aa;
  39.       bbb = bb;
  40.       loop=1;
  41.       while (loop)
  42.     {
  43.       fail = 0;
  44.       for (i = 0; i < 4; i++)
  45.         {
  46.           if (!fail && *aa != *bb) { fail = 1; }
  47.           aa++;
  48.           bb++;
  49.         }
  50.       if (fail && *bb == ',') { aa -= 4; loop = 1; bb++; }
  51.       else loop = 0;
  52.     }
  53.       /*printf("%s %s %c\n",aaa,bbb,fail?' ':'*');*/
  54.       if (!fail)
  55.     right++;
  56.     }
  57.  
  58.   printf ("%s %d RIGHT %d\n", argv[1], right, num);
  59. }
  60.